var app = getApp();
var utils = require('../../../utils/shop/formatShop.js');
Page({

  /**
   * 页面的初始数据
   */
  data: {
    config: [],

    prolist: [], //产品列表
    post_data: {
      act: 'get_kanjia_pro',
      User_ID: 0,
      is_recommend: 0,  // 0: 所有  1：推荐
      order_by: '', // is_hot、is_new
      keyword: '',
      page: 1,
      pageSize: 20
    },
    //是否能获取订单数据状态  
    get_flag: true,
    //加载更多动画
    loading: true,
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    wx.hideLoading();
    if (options.ownerid) {
      app.globalData.ownerid = options.ownerid;
    }
    this.load();
  },

  /**
   * 加载
   */
  load: function() {
    if (!app.globalData.userInfo) {
      wx.hideLoading();
      app.login('', this.load);
      return false;
    }

    this.setData({
      'post_data.User_ID': app.globalData.userInfo.User_ID
    });

    // 获取配置
    this.get_config();

    // 查询砍价产品
    this.get_prod();
  },

  // 获取配置
  get_config() {
    let post_data = {
      act: 'get_kanjia_config'
    };
    app.http_req(post_data, app.globalData.init.api_url, 'POST', (res) => {
      if (res.errorCode == 0) {
        let config = res.data;
        this.setData({
          config: config
        });

        // 修改标题
        app.setNavBarTitle(config.Material_Json && config.Material_Json.Title ? config.Material_Json.Title : '微砍价');
      }
    });
  },

  // 查询砍价产品
  get_prod: function() {
    this.setData({
      loading: true
    });
    app.http_req(this.data.post_data, app.globalData.init.api_url, 'POST', res => {
      if (res.errorCode == 0) {
        this.setData({
          prolist: this.data.prolist.concat(res.data),
          'post_data.page': this.data.post_data.page + 1,
          get_flag: (res.totalCount / this.data.post_data.pageSize) > this.data.post_data.page ? true : false
        });
      } else if (res.errorCode == 2) {
        this.setData({
          prolist: [],
          get_flag: false
        });
      }

      // 结束下拉刷新
      utils.overPullDownRefresh();

      this.setData({
        loading: false
      });
    });
  },

  //点击搜索时候,搜索相关产品、虚拟键盘完成
  search_pro: function (e) {
    var keyword = (typeof e.detail.value == 'object') ? e.detail.value.keyword : e.detail.value;
    //重置产品信息并设置搜索参数
    this.setData({
      prolist: [],
      'post_data.keyword': keyword,
      'post_data.page': 1,
      get_flag: true
    });
    //查询产品
    this.get_prod();
  },

  // 选择
  nav_switch(e) {
    let switch_val = e.currentTarget.dataset.switch_val;
    if (switch_val == 'is_new') {
      this.setData({
        'post_data.order_by': this.data.post_data.order_by === 'is_new' ? '' : 'is_new'
      });
    } else if (switch_val == 'is_hot') {
      this.setData({
        'post_data.order_by': this.data.post_data.order_by === 'is_hot' ? '' : 'is_hot'
      });
    } else if (switch_val == 'is_recommend') {
      this.setData({
        'post_data.is_recommend': this.data.post_data.is_recommend == 1 ? 0 : 1
      });
    }
    this.setData({
      prolist: [],
      'post_data.page': 1,
      get_flag: true
    });
    //查询产品
    this.get_prod();
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {
    //显示加载导航条
    wx.showNavigationBarLoading();
    //初始化数据 (防止数据重复)
    this.setData({
      config: [],
      prolist: [], //产品列表
      //显示的页码
      'post_data.page': 1,
      //是否能获取订单数据状态  
      get_flag: true,
      //加载更多动画
      loading: true,
    });
    this.load();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
    if (this.data.get_flag && !this.data.loading) {
      this.get_prod_lists();
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {
    let config = this.data.config;
    let data = {
      title: config.Material_Json && config.Material_Json.Title ? config.Material_Json.Title : '微砍价',
      path: '/pages/kanjia/kanjia/kanjia' + app.share(),
    };
    if (config.Material_Json && config.Material_Json.ImgPath) {
      data.imageUrl = config.Material_Json.ImgPath;
    }
    return data;
  }
})